// var twoSum = function (numbers, target) {
//   let left = 0
//   let right = numbers.length - 1
//   while (true) {
//     let s = numbers[left] + numbers[right]
//     if (s === target) {
//       return [left + 1, right + 1] // 题目要求下标从 1 开始
//     }
//     // 非递减序列，当和大于的时候，说明右指针往左移动，
//     // 如果和小于的时候，说明左指针往右移动
//     s > target ? right-- : left++
//   }
// }

var twoSum = function (numbers, target) {
  let i = 0,
    j = numbers.length - 1

  while (i < j) {
    let sum = numbers[i] + numbers[j]
    if (sum > target) {
      j--
    } else if (sum < target) {
      i++
    } else {
      return [i + 1, j + 1]
    }
  }
}
